<?php
/* 
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
*/

/**
 * Description of Revisor
 *
 * @author cshepherd
 */
class Revisor extends RevisorDAO {

    public function actualizar($data){
        try{
            $objRevisorTO = new RevisorTO();
            $objRevisorTO->setIdRevisor($data['id']);
            $objRevisorTO->setNombre($data['nombre']);
            $objRevisorTO->setApellido($data['apellido']);
            $objRevisorTO->setCargo($data['cargo']);
            $objRevisorTO->setEmail1($data['email1']);
            $objRevisorTO->setEmail2($data['email2']);
            $objRevisorTO->setInstitucion($data['institucion']);
            $objRevisorTO->setIdPais($data['pais']);
            $objRevisorTO->setIdTrack($data['track']);
            $this->update($objRevisorTO);
            return $objRevisorTO;
        }catch (Exception $e){
            throw $e;
        }
    }

    public function actualizarRevisorForm($objRevisorTO){
        try{
            return $this->loadRevisorById($objRevisorTO);
        }catch (Exception $e){
            throw $e;
        }
    }

    public function contador($table,$atribute,$condicion) {
        try {
            $cont = $this->count($table, $atribute, $condicion);
            return $cont;
        }catch (Exception $e) {
            throw $e;
        }
    }

    public function listar($condition='TRUE', $page='1', $rows_per_page='3', $order_by='nombre', $order_by_type='DESC') {
        try {
            $data = $this->select('*',$condition, $page, $rows_per_page, $order_by, $order_by_type);
            return $data;
        }
        catch(Exception $e) {
            throw $e;
        }
    }

    public function cargarRevisor($objRevisorTO) {
        try {
            return $this->load($objRevisorTO);
        }
        catch(Exception $e) {
            throw $e;
        }
    }
    
    public function obtenerPaperPorId($objPaperTO) {
        try {
            return $this->loadRevisorById($objPaperTO);
        }
        catch(Exception $e) {
            throw $e;
        }
    }

    public function insertar($data,$id_cuenta) {
        try {
            $objetoTO = new RevisorTO;
            $objetoTO->setNombre($data['nombre']);
            $objetoTO->setApellido($data['apellido']);
            $objetoTO->setEmail1($data['email1']);
            $objetoTO->setEmail2($data['email2']);
            $objetoTO->setInstitucion($data['institucion']);
            $objetoTO->setCargo($data['cargo']);
            $objetoTO->setIdPais($data['pais']);
            $objetoTO->setIdCuenta($id_cuenta);
            $objetoTO->setIdTrack($data['track']);
            return $this->insert($objetoTO);
        }
        catch(Exception $e) {
            throw $e;
        }
    }

    public function eliminarRevisor($id_revisor){
        try{
            $this->delete($id_revisor);
            return "Actualización realizada";
        }catch (Exception $e){
            throw $e;
        }
    }

    public function actualizarCV($archivo_cv){
        try{
            $objRevisorTO = new RevisorTO();
            $objRevisorTO->setCV($archivo_cv);
            $objRevisorTO->setIdRevisor($_SESSION['cuenta_data']->getIdRevisor());
            return $this->updateCV($objRevisorTO);
        }catch (Exception $e){
            throw $e;
        }
    }
}
?>
